package com.lipaluma.io;

import java.io.Closeable;
import java.util.Iterator;


/**
 * interface for reading the file entry
 * @author Mario
 */
public interface SourceReader extends Iterator<Row>, Closeable{	
	/**
	 * returns the current row read
	 * @return the current row
	 */
	public int getCurrentLineNumber();
	
	/**
	 * check if the file has next line
	 * @return true if has next line
	 */
	boolean hasNext();
	
	/**
	 * return the next line as a Row
	 * @return the row
	 */
	Row next();
	
	/**
	 * method of iterator unused on SourceReader
	 */
	public void remove();
	
	/**
	 * close the inputStream or the reader of the entry file
	 */
	void close();
}
